package javaobjectsandencapsulation.no6;


import java.util.ArrayList;
import java.util.List;

/**
 * 尝试使用ArrayList的add(),size(),get()方法
 */
public class TestArrayList {
    public static void main(String[] args) {
        //1.创建四个狗狗对象
        Dog dog = new Dog("欧欧", "雪瑞纳");
        Dog dog1 = new Dog("亚亚", "拉布拉多");
        Dog dog2 = new Dog("美美", "哈士奇");
        Dog dog3 = new Dog("菲菲", "泰迪");
        //2.创建ArrayList对象集合并把4个狗狗对象放入
        List dogs = new ArrayList();
        dogs.add(dog);
        dogs.add(dog1);
        dogs.add(dog2);
        dogs.add(dog3);
        dogs.add(0, dog3);   //添加到指定位置
        //3.输出删除前集合中狗狗的数量
        System.out.println("删除之前共计有" + dogs.size() + "条狗狗。");
        //3.1输出删除后集合中的狗狗的数量
        dogs.remove(0); //删除集合中下标3位置上的狗狗数据
        dogs.remove(dog1);  //删除集合中对象名为“dog1”的狗狗数据
        System.out.println("删除之后共计有" + dogs.size() + "条狗狗。");
        System.out.println("分别是：");
        //4.通过遍历集合显示各条狗狗信息
        for (int i = 0; i < dogs.size(); i++) {
            Dog  ouDog = (Dog) dogs.get(i); //调用上面的实例化只能单个，利用循环 i 遍历长度逐个显示ArrayList集合所有长度数据挨个转换，就可以用转换的Dog对象直接调用全部
            System.out.println(ouDog.getName() + "\t" + ouDog.getType());
        }
        //5.判断集合中是否包含指定的狗狗信息
        //这个是判断对象是否存在，并不是判断指定狗狗
        if (dogs.contains(dog2)) {
            System.out.println("\n集合中包含美美的信息");
        } else {
            System.out.println("\n集合中不包含美美的信息");
        }
    }
}
